package main

import "fmt"

type Person1 struct {
	name string
}

func showPerson(per Person) {
	per.name = "amy..."
}
func showPerson2(per *Person) {
	per.name = "amy..."
}

func main() {
	p1 := Person{
		name: "amy",
	}
	p2 := &Person{
		name: "amy",
	}

	showPerson(p1)
	fmt.Printf("p1:%v\n", p1)
	fmt.Println("----------------------------")
	showPerson2(p2)
	fmt.Printf("p2:%v\n", *p2)
	/*type Person struct {
		name string
	}

	p1 := Person{
		name: "amy",
	}

	p2 := &Person{
		name: "tom",
	}
	fmt.Printf("p1:%T\n", p1)
	fmt.Printf("p2:%T\n", p2)*/
}
